Server/Client Development

The Server/Client Approach to Application Development


A Server/Client Approach

The USoft application development tool set takes client/server computing beyond desktop and departmental solutions and into the enterprise to deliver the promise of the server/client computing model. USoft's unique server/client architecture balances the client focus of first-generation client/server tools by delivering the sizzle of graphical clients and the richness of server environments. Generating both servers and clients from a single repository, USoft server/client software drives application design from the database, leveraging the robust data modeling capabilities of today's sophisticated RDBMSs without tying solutions to a single vendor's database management system.

Object-Oriented, Dynamic Repository: The Heart of USoft Server/Client Computing

USoft's server/client repository, as an integral component of the USoft Developer environment, provides comprehensive facilities to define and model all specifications required to completely generate complex server/client information systems. The informational structure, user interface requirements and standards, object behavior, data integrity and business rules can all be stored in the multi-user repository and used by the USoft Developer environment.

The repository holds all system definitions, including the Windows interface, the database and various business rules (constraints, authorizations, etc.). The repository is completely integrated with USoft Developer's generation capabilities, allowing automatic creation of complete information systems with virtually no coding required. This approach provides developers with complete control over referential integrity, business rules, master/detail synchronizations, dialogs, authorizations and inter-object navigation. The same repository definitions can be used to develop SQL*Forms or native MS Windows, Windows NT, or X-Windows applications.

USoft Developer's object-based approach allows the reuse of systems development information across an organization, promoting developer productivity by eliminating the need replicate development efforts. Object-based development associates a single entity, and the way it behaves, with all other objects that relate to it.

As a result, a change to an object or business rule made in one place in an application is "inherited" by other objects -- it is proliferated throughout the application, ensuring consistency and reducing development time and effort. All the application's components -- the user interfaces, database definitions, business rules and constraints, etc. -- can be reused in this manner. Using the extensive inheritance facilities from domain classes and controls, developers have complete control over the systems life cycle and the "look and feel" of a system.

Business Rules: Defined Once, Reused Across the Enterprise

Business rules are implemented throughout the system based on definitions and specifications held within USoft's server/client repository. This method removes the need to manually code rules into screen-painted applications each time they are invoked by the system. For example, relationships between objects such as a restricted delete rule between a customer and an order placed by that customer do not need any coding at all. USoft developer implements all constraints automatically using simple, easy-to-use predefined options in the repository.

Although most of the business rules are generated from repository definitions, in certain cases of specific user-defined business rules, standard SQL is used. These SQL statements are stored in the constraint library of the repository. USoft Developer uses a unique "define violations" approach by which the exclusions of the rule are defined. This approach dramatically simplifies the need to write code and increases system performance.

For example, a simple SQL statement in USoft Developer such as:

   select ''violated   
   from dept   
   where dept.budget > (select sum (emp.salary)   
   from emp, dept   
   where dept.dept_id = emp.dept_id)   
would be equivalent to writing two stored procedures and six update, delete, insert triggers in SYBASE. In ORACLE7, either two stored procedures and six triggers at the database level, or two procedures and six triggers at the application level, would be necessary in case there are conflicts with declarative integrity constraints.

Full Data Modeling & Diagramming

USoft Developer provides complete data model support, which is fully integrated with the USoft server/client repository. The object diagram can be viewed using the diagrammer within the USoft Developer environment, with the definitions automatically stored in the repository, providing the source for implementation of the application.

USoft Developer provides a dynamically integrated object diagramming tool, facilitating both development and systems evolution. The diagram can be produced automatically from the repository. Addition or modification of objects and relationships automatically updates the repository, and vice versa. There is no requirement to continually "consolidate" diagrams with the repository when working in a multi-user environment or with the repository directly.

Through the use of USoft Developer, the diagrams are always kept automatically synchronized with the contents of the repository. USoft Developer fully supports the definition of corporate data models and provides the ability to generate complex, integrated information systems from these models.

This model-driven approach to system definition and implementation allows instant preview of end-user systems, providing a clear development direction. Thus, end users can immediately provide valuable feedback on development and systems evolution.

Iterative Development Approach Speeds Development of a Finely Tuned Solution

USoft Developer supports a truly iterative rapid application development process. Developing an application is a two-step process. First, the business rules and application objects are defined in the USoft server/client repository. As soon as the rules are entered, a prototype run can be performed. Changes identified during the prototype run can be immediately made to the business rules and application objects and, through the USoft server/client repository, implemented within the application.

USoft: The Server/Client Software Company

USoft is based on a unique server/client architecture that offers capability far beyond existing client/server tools. Server/client balances the client-focus of first generation client/server tools by delivering both the sizzle of graphical clients, as well as the functional richness of server-based solutions. Server/client picks up where client/server leaves off by providing unheralded application development productivity and flexibility, at all levels of the enterprise.

USoft offers complete education, consulting and support services. USoft professionals will be glad to:

To investigate a partnership with USoft for developing and implementing server/client solutions, call toll-free at 1-800-For-USoft, or call one of our offices.
[home] [index] [offices] [summary]